/*******
 * @description: 倒计时
 * @author: 琴时
 * @param {params} [截止时间]
 * @return {*} [倒计时间/结束将返回null]
 */
export const countDown = params => {
  const nowTime = +new Date() // 当前时间戳
  const endTime = +new Date(params) // 结束时间戳
  const times = (endTime - nowTime) / 1000 // 剩余时间总的秒数
  const dd = parseInt(times / 60 / 60 / 24)
    .toString()
    .padStart(2, '0') // 天
  const hh = parseInt(((times / 60 / 60) % 24) + '')
    .toString()
    .padStart(2, '0') //时
  const mm = parseInt(((times / 60) % 60) + '')
    .toString()
    .padStart(2, '0') // 分
  const ss = parseInt((times % 60) + '')
    .toString()
    .padStart(2, '0') // 当前的秒
  if (ss < 0 || mm < 0 || hh < 0 || dd < 0) return null //结束返回null
  return `${dd}天${hh}时${mm}分${ss}秒` //返回倒计时间
}

/**
 * 测试用例
 * 将src/index.js底部执行函数:selectTest(params)的实参params改为1
 * 直接无法测试，请使用npm run dev或者去掉 export 使用node运行当前界面测试即可
 */
/* 毕业倒计时 */
const timer = setInterval(() => {
  const time = countDown('2021-07-01')
  if (!time) {
    console.log('测试毕业倒计时:毕业快乐!')
    return clearInterval(timer)
  }
  console.log('测试毕业倒计时:', time)
}, 1000)
/* 下班倒计时 */
/* import { dateFormat } from './格式化时间'
const date = dateFormat('YYYY-MM-DD') + ' 18:00:00'
const newTimer = setInterval(() => {
  const time = countDown(date)
  if (!time) {
    console.log('6点几咯，做咩也做，落班饮茶先咧!')
    return clearInterval(newTimer)
  }
  console.log('测试下班倒计时:', time)
}, 1000)
 */